//直接在一个对象上定义新的属性或修改现有属性，并返回该对象。  两个参数

//不开启枚举时 属性值实际存在但是属性名无法暴露
var obj = {};
Object.defineProperties(obj, {
	'property1': {
		value: true,
		//enumerable: true,
		writable: true,
	},
	'property2': {
		value: 'Hello,word',
		//enumerable: true,
		writable: false
	}
});
obj.property2 = 666 //不可以被修改

console.log(obj)
for (let each in obj) {
	console.log(obj[each])
}

//getOwnPropertyDescriptor
console.log(Object.getOwnPropertyDescriptor(obj, 'property1'))
